Generalizing AOP for Aspect-Oriented Testing
نویسندگان
چکیده
In profiling program execution to assess the adequacy of a test set, a challenge is to select the code to be included in the coverage assessment. Current mechanisms for doing this are coarse-grained, assume traditional concepts of modularity, require tedious and error-prone manual selection, and leave the tester’s intent implicit in the input provided to the testing tools. The aspect-oriented constructs of languages such as AspectJ promise to help ease and extend our ability to select the code to be included in a test adequacy criterion and to document the tester’s intent within the source code itself. Our contribution is a language-centric approach to automated test adequacy analysis that we call concern coverage. We claim that our approach enables explicit, precise, abstract, and machine-readable representation of the tester’s intent and that it can ease testing by eliminating the need for manual selection and explicit maintenance of test adequacy criteria.
منابع مشابه
Data Flow Integration Testing Criteria for Aspect-Oriented Programs
Aspect-Oriented Programming (AOP) is a new technique proposed for improving separation of concerns in software development. Although it is claimed that AOP increases understandability and eases the maintenance burden, the technology cannot provide correctness by itself, and thus it also requires systematic verification, validation and testing (VV&T) approaches to improve software quality. One o...
متن کاملIncremental Modular Testing for AOP
By designing systems as sets of modules that can be composed into larger applications, developers unleash a multitude of advantages. The promise of AOP (Aspect-Oriented Programming) is to enable developers to organize crosscutting concerns into separate units of modularity making it easier to accomplish this vision. However, AOP does not allow unit tests to be untangled, which impairs the devel...
متن کاملAutomated Java Testing: JUnit versus AspectJ
Growing dependency of mankind on software technology increases the need for thorough testing of the software applications and automated testing techniques that support testing activities. We have outlined our testing strategy for performing various types of automated testing of Java applications using AspectJ which has become the de-facto standard for Aspect Oriented Programming (AOP). Likewise...
متن کاملOn the Applicability of Random Testing for Aspect-Oriented Programs
Random Testing(RT) and its derivatives such as Adaptive Random Testing (ART ) are active and important research topics in software testing, which have also a niche in practical settings due to the merits they offers, e.g. fault-detection capacities at low cost, ease of implementation, reliability estimation, facility for automation and so forth. Inspired by these advantages, we believe the idea...
متن کاملTowards the Systematic Testing of Aspect-Oriented Programs
The code that provides solutions to key software requirements, such as security and fault-tolerance, tends to be spread throughout (or cross-cut) the program modules that implement the “primary functionality” of a software system. Aspect-oriented programming is an emerging programming paradigm that supports implementing such cross-cutting requirements into named program units called “aspects”. ...
متن کامل